/
ArrayMarshaller`2+ManagedToUnmanagedIn.xml
290 lines (284 loc) · 16.8 KB
/
ArrayMarshaller`2+ManagedToUnmanagedIn.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
<Type Name="ArrayMarshaller<T,TUnmanagedElement>+ManagedToUnmanagedIn" FullName="System.Runtime.InteropServices.Marshalling.ArrayMarshaller<T,TUnmanagedElement>+ManagedToUnmanagedIn">
<TypeSignature Language="C#" Value="public ref struct ArrayMarshaller<T,TUnmanagedElement>.ManagedToUnmanagedIn where TUnmanagedElement : struct" />
<TypeSignature Language="ILAsm" Value=".class nested public sequential ansi sealed beforefieldinit ArrayMarshaller`2/ManagedToUnmanagedIn<T, struct .ctor (class System.ValueType) TUnmanagedElement> extends System.ValueType" />
<TypeSignature Language="DocId" Value="T:System.Runtime.InteropServices.Marshalling.ArrayMarshaller`2.ManagedToUnmanagedIn" />
<TypeSignature Language="VB.NET" Value="Public Structure ArrayMarshaller(Of T, TUnmanagedElement).ManagedToUnmanagedIn" />
<TypeSignature Language="F#" Value="type ArrayMarshaller<'T, 'UnmanagedElement (requires 'UnmanagedElement : struct)>.ManagedToUnmanagedIn = struct" />
<TypeSignature Language="C++ CLI" Value="public: where TUnmanagedElement : value classvalue class ArrayMarshaller<T, TUnmanagedElement>::ManagedToUnmanagedIn" />
<AssemblyInfo>
<AssemblyName>System.Runtime.InteropServices</AssemblyName>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<TypeParameters>
<TypeParameter Name="T">
<Attributes>
<Attribute FrameworkAlternate="net-8.0;net-9.0">
<AttributeName Language="C#">[System.Runtime.CompilerServices.Nullable(2)]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.Nullable(2)>]</AttributeName>
</Attribute>
</Attributes>
</TypeParameter>
<TypeParameter Name="TUnmanagedElement">
<Constraints>
<ParameterAttribute>DefaultConstructorConstraint</ParameterAttribute>
<ParameterAttribute>NotNullableValueTypeConstraint</ParameterAttribute>
<BaseTypeName>System.ValueType</BaseTypeName>
</Constraints>
<Attributes>
<Attribute FrameworkAlternate="net-8.0;net-9.0">
<AttributeName Language="C#">[System.Runtime.CompilerServices.IsUnmanaged]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.IsUnmanaged>]</AttributeName>
</Attribute>
</Attributes>
</TypeParameter>
</TypeParameters>
<Base>
<BaseTypeName>System.ValueType</BaseTypeName>
</Base>
<Interfaces />
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Runtime.CompilerServices.CompilerFeatureRequired("RefStructs")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.CompilerFeatureRequired("RefStructs")>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Runtime.CompilerServices.IsByRefLike]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.IsByRefLike>]</AttributeName>
</Attribute>
</Attributes>
<Docs>
<summary>Marshaller for marshalling a array from managed to unmanaged.</summary>
<remarks>To be added.</remarks>
</Docs>
<Members>
<Member MemberName="BufferSize">
<MemberSignature Language="C#" Value="public static int BufferSize { get; }" />
<MemberSignature Language="ILAsm" Value=".property int32 BufferSize" />
<MemberSignature Language="DocId" Value="P:System.Runtime.InteropServices.Marshalling.ArrayMarshaller`2.ManagedToUnmanagedIn.BufferSize" />
<MemberSignature Language="VB.NET" Value="Public Shared ReadOnly Property BufferSize As Integer" />
<MemberSignature Language="F#" Value="static member BufferSize : int" Usage="System.Runtime.InteropServices.Marshalling.ArrayMarshaller<'T, 'UnmanagedElement (requires 'UnmanagedElement : struct)>.ManagedToUnmanagedIn.BufferSize" />
<MemberSignature Language="C++ CLI" Value="public:
 static property int BufferSize { int get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Runtime.InteropServices</AssemblyName>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the requested caller-allocated buffer size.</summary>
<value>To be added.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
This property represents a potential optimization for the marshaller.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="Free">
<MemberSignature Language="C#" Value="public void Free ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Free() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Runtime.InteropServices.Marshalling.ArrayMarshaller`2.ManagedToUnmanagedIn.Free" />
<MemberSignature Language="VB.NET" Value="Public Sub Free ()" />
<MemberSignature Language="F#" Value="member this.Free : unit -> unit" Usage="managedToUnmanagedIn.Free " />
<MemberSignature Language="C++ CLI" Value="public:
 void Free();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Runtime.InteropServices</AssemblyName>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Frees resources.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="FromManaged">
<MemberSignature Language="C#" Value="public void FromManaged (T[]? array, Span<TUnmanagedElement> buffer);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void FromManaged(!T[] array, valuetype System.Span`1<!TUnmanagedElement> buffer) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Runtime.InteropServices.Marshalling.ArrayMarshaller`2.ManagedToUnmanagedIn.FromManaged(`0[],System.Span{`1})" />
<MemberSignature Language="VB.NET" Value="Public Sub FromManaged (array As T(), buffer As Span(Of TUnmanagedElement))" />
<MemberSignature Language="F#" Value="member this.FromManaged : 'T[] * Span<'UnmanagedElement (requires 'UnmanagedElement : struct)> -> unit" Usage="managedToUnmanagedIn.FromManaged (array, buffer)" />
<MemberSignature Language="C++ CLI" Value="public:
 void FromManaged(cli::array <T> ^ array, Span<TUnmanagedElement> buffer);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Runtime.InteropServices</AssemblyName>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="array" Type="T[]">
<Attributes>
<Attribute FrameworkAlternate="net-8.0;net-9.0">
<AttributeName Language="C#">[System.Runtime.CompilerServices.Nullable(new System.Byte[] { 2, 1 })]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.Nullable(new System.Byte[] { 2, 1 })>]</AttributeName>
</Attribute>
</Attributes>
</Parameter>
<Parameter Name="buffer" Type="System.Span<TUnmanagedElement>" />
</Parameters>
<Docs>
<param name="array">The array to be marshalled.</param>
<param name="buffer">The buffer that may be used for marshalling.</param>
<summary>Initializes the <see cref="T:System.Runtime.InteropServices.Marshalling.ArrayMarshaller`2.ManagedToUnmanagedIn" /> marshaller.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The `buffer` must not be movable - that is, it should not be
on the managed heap or it should be pinned.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="GetManagedValuesSource">
<MemberSignature Language="C#" Value="public ReadOnlySpan<T> GetManagedValuesSource ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype System.ReadOnlySpan`1<!T> GetManagedValuesSource() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Runtime.InteropServices.Marshalling.ArrayMarshaller`2.ManagedToUnmanagedIn.GetManagedValuesSource" />
<MemberSignature Language="VB.NET" Value="Public Function GetManagedValuesSource () As ReadOnlySpan(Of T)" />
<MemberSignature Language="F#" Value="member this.GetManagedValuesSource : unit -> ReadOnlySpan<'T>" Usage="managedToUnmanagedIn.GetManagedValuesSource " />
<MemberSignature Language="C++ CLI" Value="public:
 ReadOnlySpan<T> GetManagedValuesSource();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Runtime.InteropServices</AssemblyName>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ReadOnlySpan<T></ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Returns a span that points to the memory where the managed values of the array are stored.</summary>
<returns>A span over managed values of the array.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="GetPinnableReference">
<MemberSignature Language="C#" Value="public ref TUnmanagedElement GetPinnableReference ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance !TUnmanagedElement GetPinnableReference() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Runtime.InteropServices.Marshalling.ArrayMarshaller`2.ManagedToUnmanagedIn.GetPinnableReference" />
<MemberSignature Language="VB.NET" Value="Public Function GetPinnableReference () As TUnmanagedElement" />
<MemberSignature Language="F#" Value="member this.GetPinnableReference : unit -> 'UnmanagedElement" Usage="managedToUnmanagedIn.GetPinnableReference " />
<MemberSignature Language="C++ CLI" Value="public:
 TUnmanagedElement % GetPinnableReference();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Runtime.InteropServices</AssemblyName>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue RefType="Ref">
<ReturnType>TUnmanagedElement</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Returns a reference to the marshalled array.</summary>
<returns>A pinnable reference to the unmanaged marshalled array.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="GetPinnableReference">
<MemberSignature Language="C#" Value="public static ref T GetPinnableReference (T[]? array);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig !T GetPinnableReference(!T[] array) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Runtime.InteropServices.Marshalling.ArrayMarshaller`2.ManagedToUnmanagedIn.GetPinnableReference(`0[])" />
<MemberSignature Language="VB.NET" Value="Public Shared Function GetPinnableReference (array As T()) As T" />
<MemberSignature Language="F#" Value="static member GetPinnableReference : 'T[] -> 'T" Usage="System.Runtime.InteropServices.Marshalling.ArrayMarshaller<'T, 'UnmanagedElement (requires 'UnmanagedElement : struct)>.ManagedToUnmanagedIn.GetPinnableReference array" />
<MemberSignature Language="C++ CLI" Value="public:
 static T % GetPinnableReference(cli::array <T> ^ array);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Runtime.InteropServices</AssemblyName>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="net-8.0;net-9.0">
<AttributeName Language="C#">[System.Runtime.CompilerServices.NullableContext(1)]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.NullableContext(1)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue RefType="Ref">
<ReturnType>T</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="array" Type="T[]">
<Attributes>
<Attribute FrameworkAlternate="net-8.0;net-9.0">
<AttributeName Language="C#">[System.Runtime.CompilerServices.Nullable(new System.Byte[] { 2, 1 })]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.Nullable(new System.Byte[] { 2, 1 })>]</AttributeName>
</Attribute>
</Attributes>
</Parameter>
</Parameters>
<Docs>
<param name="array">The managed array.</param>
<summary>Gets a pinnable reference to the managed array.</summary>
<returns>The reference that can be pinned and directly passed to unmanaged code.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="GetUnmanagedValuesDestination">
<MemberSignature Language="C#" Value="public Span<TUnmanagedElement> GetUnmanagedValuesDestination ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype System.Span`1<!TUnmanagedElement> GetUnmanagedValuesDestination() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Runtime.InteropServices.Marshalling.ArrayMarshaller`2.ManagedToUnmanagedIn.GetUnmanagedValuesDestination" />
<MemberSignature Language="VB.NET" Value="Public Function GetUnmanagedValuesDestination () As Span(Of TUnmanagedElement)" />
<MemberSignature Language="F#" Value="member this.GetUnmanagedValuesDestination : unit -> Span<'UnmanagedElement (requires 'UnmanagedElement : struct)>" Usage="managedToUnmanagedIn.GetUnmanagedValuesDestination " />
<MemberSignature Language="C++ CLI" Value="public:
 Span<TUnmanagedElement> GetUnmanagedValuesDestination();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Runtime.InteropServices</AssemblyName>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Span<TUnmanagedElement></ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Returns a span that points to the memory where the unmanaged values of the array should be stored.</summary>
<returns>A span where unmanaged values of the array should be stored.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="ToUnmanaged">
<MemberSignature Language="C#" Value="public TUnmanagedElement* ToUnmanaged ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance !TUnmanagedElement* ToUnmanaged() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Runtime.InteropServices.Marshalling.ArrayMarshaller`2.ManagedToUnmanagedIn.ToUnmanaged" />
<MemberSignature Language="F#" Value="member this.ToUnmanaged : unit -> nativeptr<'UnmanagedElement>" Usage="managedToUnmanagedIn.ToUnmanaged " />
<MemberSignature Language="C++ CLI" Value="public:
 TUnmanagedElement* ToUnmanaged();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Runtime.InteropServices</AssemblyName>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>TUnmanagedElement*</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Returns the unmanaged value representing the array.</summary>
<returns>A pointer to the beginning of the unmanaged value.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>